package com.shimao.celnet.payment.form;

import com.shimao.celnet.payment.model.*;

import javax.persistence.Column;
import java.util.List;

/**
 * 支付：分页列表数据设置
 * Created by ensure.xu on 2017/12/3.
 */
public class PPayForm extends MyPageInfo<PPayInfoForm> {

    /**
     * guid
     */
    private String guid;

    /**
     * 设置分页数据
     * @param list
     */
    public void setPageInfo(List<PPayInfoForm> list) {
        super.setMyPageInfo(list);
    }

    /**
     * 查询条件：”业务类型List
     */
    private List<SCodeName> businessTypeList;

    /**
     * 查询条件：”支付方式List
     */
    private List<SCodeName> payTypeList;

    /**
     * 查询条件：支付状态List
     */
    private List<SCodeName> payStatusList;

    /**
     * 查询条件：小区List
     */
    private List<BEstate> estateList;

    /**
     * 查询条件：是否存在退款
     */
    private String isRefund;

    /**
     * 业务类型
     */
    private String businessType;

    /**
     * 支付方式（选项：A01支付宝，A02微信，A03银联)
     */
    private String payType;

    /**
     * 支付金额
     */
    private String payAmount;

    /**
     * 退款金额
     */
    private String refundAmount;

    /**
     * 可退款金额
     */
    private String enRefundAmount;

    /**
     * 支付开始时间
     */
    private String payStartTime;

    /**
     * 支付结束时间
     */
    private String payEndTime;

    /**
     * 小区guid小区<b_estate>guid
     */
    private String estateGuid;

    /**
     * 小区
     */
    private String estateName;


    /**
     * 支付房间guid房源信息表<b_house>guid
     */
    private String hourceGuid;

    /**
     * 支付房间名称
     */
    private String hourceName;

    /**
     * 小区SF-GUID
     */
    private String estateSfGuid;

    /**
     * 支付房间SF-GUID
     */
    private String hourceSfGuid;

    /**
     * 支付用户SF-GUID
     */
    private String payUserSfGuid;


    /**
     * 支付用户名
     */
    private String payUserName;

    /**
     * 支付状态选项：0:支付申请，1:支付成功；2：支付失败
     */
    private String payStatus;

    /**
     * 支付商户GUID支付商户信息表<p_pay_cust>guid
     */
    private String payCustGuid;

    /**
     * 商户id通联支付系统分配的支付商户id
     */
    private String qsoCustId;

    /**
     * 应用id通联支付平台分配的APPID
     */
    private String qsoAppId;

    /**
     * 密钥通联支付系统分配的支付密钥
     */
    private String qsoAppKey;

    /**
     * 客户端支付url通联支付请求：返回的支付URL
     */
    private String payInfoUrl;

    public String getGoBackUrl() {
        return goBackUrl;
    }

    public void setGoBackUrl(String goBackUrl) {
        this.goBackUrl = goBackUrl;
    }

    /**
     * 客户端支付url通联支付请求：通知URL
     */
    private String goBackUrl;

    /**
     * 支付账单流水号，通联系统唯一
     */
    private String trxid;

    /**
     * 支付说明,支付账单编号+名称，多个名称用；分隔
     */
    private String payRemark;

    /**
     * 应用系统编号，例如：201：物业系统，301：茂家APP
     */
    private String appKey;


    /**
     * 接口编号,参照接口设计书
     */
    private String interfaceId;

    /**
     * 支付明细
     */
    private List<PPayDetail> payDetailList;

    /**
     * 退款明细
     */
    private List<PPayRefund> payRefundList;


    /**
     * 外部系统支付id
     */
    private String exsysPayId;

    public String getExsysPayId() {
        return exsysPayId;
    }

    public void setExsysPayId(String exsysPayId) {
        this.exsysPayId = exsysPayId;
    }
    public List<BEstate> getEstateList() {
        return estateList;
    }

    public void setEstateList(List<BEstate> estateList) {
        this.estateList = estateList;
    }

    public String getIsRefund() {
        return isRefund;
    }

    public void setIsRefund(String isRefund) {
        this.isRefund = isRefund;
    }

    public List<PPayRefund> getPayRefundList() {
        return payRefundList;
    }

    public void setPayRefundList(List<PPayRefund> payRefundList) {
        this.payRefundList = payRefundList;
    }

    public String getRefundAmount() {
        return refundAmount;
    }

    public void setRefundAmount(String refundAmount) {
        this.refundAmount = refundAmount;
    }

    public String getEnRefundAmount() {
        return enRefundAmount;
    }

    public void setEnRefundAmount(String enRefundAmount) {
        this.enRefundAmount = enRefundAmount;
    }

    public List<SCodeName> getPayStatusList() {
        return payStatusList;
    }

    public void setPayStatusList(List<SCodeName> payStatusList) {
        this.payStatusList = payStatusList;
    }

    public List<SCodeName> getBusinessTypeList() {
        return businessTypeList;
    }

    public void setBusinessTypeList(List<SCodeName> businessTypeList) {
        this.businessTypeList = businessTypeList;
    }

    public List<SCodeName> getPayTypeList() {
        return payTypeList;
    }

    public void setPayTypeList(List<SCodeName> payTypeList) {
        this.payTypeList = payTypeList;
    }


    public String getAppKey() {
        return appKey;
    }

    public void setAppKey(String appKey) {
        this.appKey = appKey;
    }

    public String getEstateGuid() {
        return estateGuid;
    }

    public void setEstateGuid(String estateGuid) {
        this.estateGuid = estateGuid;
    }

    public String getEstateName() {
        return estateName;
    }

    public void setEstateName(String estateName) {
        this.estateName = estateName;
    }

    public String getHourceName() {
        return hourceName;
    }

    public void setHourceName(String hourceName) {
        this.hourceName = hourceName;
    }

    public List<PPayDetail> getPayDetailList() {
        return payDetailList;
    }

    public void setPayDetailList(List<PPayDetail> payDetailList) {
        this.payDetailList = payDetailList;
    }

    public String getQsoCustId() {
        return qsoCustId;
    }

    public void setQsoCustId(String qsoCustId) {
        this.qsoCustId = qsoCustId;
    }

    public String getQsoAppId() {
        return qsoAppId;
    }

    public void setQsoAppId(String qsoAppId) {
        this.qsoAppId = qsoAppId;
    }

    public String getQsoAppKey() {
        return qsoAppKey;
    }

    public void setQsoAppKey(String qsoAppKey) {
        this.qsoAppKey = qsoAppKey;
    }

    public String getInterfaceId() {
        return interfaceId;
    }

    public void setInterfaceId(String interfaceId) {
        this.interfaceId = interfaceId;
    }



    public String getGuid() {
        return guid;
    }

    public void setGuid(String guid) {
        this.guid = guid;
    }

    /**
     * 获取业务类型
     *
     * @return business_type - 业务类型
     */
    public String getBusinessType() {
        return businessType;
    }

    /**
     * 设置业务类型
     *
     * @param businessType 业务类型
     */
    public void setBusinessType(String businessType) {
        this.businessType = businessType;
    }

    /**
     * 获取支付方式支付方式（选项：A01支付宝，A02微信，A03银联)
     *
     * @return pay_type - 支付方式支付方式（选项：A01支付宝，A02微信，A03银联)
     */
    public String getPayType() {
        return payType;
    }

    /**
     * 设置支付方式支付方式（选项：A01支付宝，A02微信，A03银联)
     *
     * @param payType 支付方式支付方式（选项：A01支付宝，A02微信，A03银联)
     */
    public void setPayType(String payType) {
        this.payType = payType;
    }

    /**
     * 获取支付金额
     *
     * @return pay_amount - 支付金额
     */
    public String getPayAmount() {
        return payAmount;
    }

    /**
     * 设置支付金额
     *
     * @param payAmount 支付金额
     */
    public void setPayAmount(String payAmount) {
        this.payAmount = payAmount;
    }

    /**
     * 获取支付开始时间
     *
     * @return pay_start_time - 支付开始时间
     */
    public String getPayStartTime() {
        return payStartTime;
    }

    /**
     * 设置支付开始时间
     *
     * @param payStartTime 支付开始时间
     */
    public void setPayStartTime(String payStartTime) {
        this.payStartTime = payStartTime;
    }

    /**
     * 获取支付结束时间
     *
     * @return pay_end_time - 支付结束时间
     */
    public String getPayEndTime() {
        return payEndTime;
    }

    /**
     * 设置支付结束时间
     *
     * @param payEndTime 支付结束时间
     */
    public void setPayEndTime(String payEndTime) {
        this.payEndTime = payEndTime;
    }

    /**
     * 获取支付房间guid房源信息表<b_house>guid
     *
     * @return hource_guid - 支付房间guid房源信息表<b_house>guid
     */
    public String getHourceGuid() {
        return hourceGuid;
    }

    /**
     * 设置支付房间guid房源信息表<b_house>guid
     *
     * @param hourceGuid 支付房间guid房源信息表<b_house>guid
     */
    public void setHourceGuid(String hourceGuid) {
        this.hourceGuid = hourceGuid;
    }

    /**
     * 获取小区SF-GUID
     *
     * @return estate_sf_guid - 小区SF-GUID
     */
    public String getEstateSfGuid() {
        return estateSfGuid;
    }

    /**
     * 设置小区SF-GUID
     *
     * @param estateSfGuid 小区SF-GUID
     */
    public void setEstateSfGuid(String estateSfGuid) {
        this.estateSfGuid = estateSfGuid;
    }

    /**
     * 获取支付房间SF-GUID
     *
     * @return hource_sf_guid - 支付房间SF-GUID
     */
    public String getHourceSfGuid() {
        return hourceSfGuid;
    }

    /**
     * 设置支付房间SF-GUID
     *
     * @param hourceSfGuid 支付房间SF-GUID
     */
    public void setHourceSfGuid(String hourceSfGuid) {
        this.hourceSfGuid = hourceSfGuid;
    }

    /**
     * 获取支付用户SF-GUID
     *
     * @return pay_user_sf_guid - 支付用户SF-GUID
     */
    public String getPayUserSfGuid() {
        return payUserSfGuid;
    }

    /**
     * 设置支付用户SF-GUID
     *
     * @param payUserSfGuid 支付用户SF-GUID
     */
    public void setPayUserSfGuid(String payUserSfGuid) {
        this.payUserSfGuid = payUserSfGuid;
    }


    /**
     * 获取支付用户名称
     *
     * @return pay_user_name - 支付用户名称
     */
    public String getPayUserName() {
        return payUserName;
    }

    /**
     * 设置支付用户名称
     *
     * @param payUserName 支付用户名称
     */
    public void setPayUserName(String payUserName) {
        this.payUserName = payUserName;
    }

    /**
     * 获取支付状态选项：0:支付申请，1:支付成功；2：支付失败
     *
     * @return pay_status - 支付状态选项：0:支付申请，1:支付成功；2：支付失败
     */
    public String getPayStatus() {
        return payStatus;
    }

    /**
     * 设置支付状态选项：0:支付申请，1:支付成功；2：支付失败
     *
     * @param payStatus 支付状态选项：0:支付申请，1:支付成功；2：支付失败
     */
    public void setPayStatus(String payStatus) {
        this.payStatus = payStatus;
    }

    /**
     * 获取支付商户GUID支付商户信息表<p_pay_cust>guid
     *
     * @return pay_cust_guid - 支付商户GUID支付商户信息表<p_pay_cust>guid
     */
    public String getPayCustGuid() {
        return payCustGuid;
    }

    /**
     * 设置支付商户GUID支付商户信息表<p_pay_cust>guid
     *
     * @param payCustGuid 支付商户GUID支付商户信息表<p_pay_cust>guid
     */
    public void setPayCustGuid(String payCustGuid) {
        this.payCustGuid = payCustGuid;
    }

    /**
     * 获取客户端支付url通联支付请求：返回的支付URL
     *
     * @return pay_info_url - 客户端支付url通联支付请求：返回的支付URL
     */
    public String getPayInfoUrl() {
        return payInfoUrl;
    }

    /**
     * 设置客户端支付url通联支付请求：返回的支付URL
     *
     * @param payInfoUrl 客户端支付url通联支付请求：返回的支付URL
     */
    public void setPayInfoUrl(String payInfoUrl) {
        this.payInfoUrl = payInfoUrl;
    }

    /**
     * 获取支付账单流水号支付账单流水号，通联系统唯一
     *
     * @return trxid - 支付账单流水号支付账单流水号，通联系统唯一
     */
    public String getTrxid() {
        return trxid;
    }

    /**
     * 设置支付账单流水号支付账单流水号，通联系统唯一
     *
     * @param trxid 支付账单流水号支付账单流水号，通联系统唯一
     */
    public void setTrxid(String trxid) {
        this.trxid = trxid;
    }

    /**
     * 获取支付说明,支付账单编号+名称，多个名称用；分隔
     *
     * @return pay_remark - 支付说明,支付账单编号+名称，多个名称用；分隔
     */
    public String getPayRemark() {
        return payRemark;
    }

    /**
     * 设置支付说明,支付账单编号+名称，多个名称用；分隔
     *
     * @param payRemark 支付说明,支付账单编号+名称，多个名称用；分隔
     */
    public void setPayRemark(String payRemark) {
        this.payRemark = payRemark;
    }
}